# 1 "boot.S"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "boot.S"
# Multiboot header


# 1 "./include/multiboot.h" 1
# 5 "boot.S" 2

.globl _start

#.set 1<<0, 1<<0
#.set 1<<1, 1<<1

#.set 0x1BADB002, 0x1BADB002
#.set 1<<0 | 1<<1, 1<<0 | 1<<1
 #.set -(0x1BADB002 + 1<<0 | 1<<1), -(0x1BADB002 + 1<<0 | 1<<1)

.align 4
.long 0x1BADB002
.long 1<<0 | 1<<1
.long -(0x1BADB002 + 1<<0 | 1<<1)




//.extern system_stack

_start:

 movl $(g_system_stack + 0x1000), %esp

 # reset EFLAGS
 pushl $0
 popf

 push %eax # multiboot magic #
 push %ebx # multiboot data struct

 call _main
 hlt
